home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1997 August / Macworld (1997-08).dmg / Serious Demos / Crimson Demo / Crimson IDE Demo / Crimson IDE Demo.rsrc / DATA_1151 < prev    next >
Text File  |  1997-06-17  |  1KB  |  47 lines

  1. *ˇ    Standard Event Handler*******************************
  2.     Do E___EVT__LP_
  3.     End
  4.     
  5. Procedure E___EVT__LP_()
  6. Local ContPtr As Integer
  7. Local ContSz As Integer
  8. Local gotEvent As Byte
  9. Local I As Integer
  10. Local Stat As Integer
  11. Local SleepTime as Integer
  12. Local Obj_id As Integer
  13.  
  14. Local EventRecord As Structure
  15.         Local event_what As Word
  16.         Local event_message As Integer
  17.         Local event_when As Integer
  18.         Local event_where As Integer
  19.         Local event_modifiers As Word
  20. Endstruct
  21.  
  22.     ContPtr=Lpeek(GB___GetA5_()-418)
  23.     ContSz=_GetPtrSize(ContPtr)/4
  24.     SleepTime=Lpeek(&H02F4)/8        ' CaretTime
  25.  
  26. E___Event__Loop_:
  27.     gotEvent=_WaitNextEvent(Word(-1),EventRecord,SleepTime,0)
  28.     I=0
  29. E___Inner__Loop_:
  30.     Inc I
  31.     If I>ContSz
  32.         Do C___Usr__Evt_(Integer(gotEvent),Varptr(EventRecord))
  33.         Goto E___Event__Loop_
  34.     Else
  35.         Obj_id=Lpeek(ContPtr+((I-1)*4))
  36.         If Obj_id=0
  37.             Goto E___Inner__Loop_
  38.         Endif
  39.         Stat=C___CONT_ONEVT_(Obj_id,Integer(gotEvent),Varptr(EventRecord))
  40.         If Stat<>0
  41.             Goto E___Event__Loop_
  42.         Endif
  43.     Endif
  44.     Goto E___Inner__Loop_
  45. Return
  46.  
  47. * End of Standard Event Loop *********************************